Smart cards are pocket-sized cards with integrated circuits that hold one or more software applications. Multiple application smart cards are useful because several applications can be implemented on the same smart card. However, the presence of multiple applications on the same smart card also results in difficulty coordinating how the applications co-exist and execute. This problem is amplified when applications from different service providers are put on the same smart card.
Multiple application smart cards typically use a software firewall to prevent interference among smart card applications from different service providers. However, the card issuer is responsible for verifying that the different applications work together. Also, legal agreements might be required between the card issuer and the service providers, and between the service providers themselves. This coordination using software firewalls, card issuer verification, and legal agreements can quickly become difficult and expensive as more and more applications from different service providers are put onto the same smart card.